package com.yl.service;

import org.apache.dubbo.common.stream.StreamObserver;
import org.apache.dubbo.config.annotation.DubboReference;
import org.springframework.stereotype.Service;

import java.io.Serializable;

/**
 * @author yangl
 */
@Service
public class OrderService implements Serializable {

//    @DubboReference
//    private UserService userService;

//    public String getOrder(){
////        return userService.getUser();
//
//        //STREAM_SERVER 流式调用 使用流式调用的时候，一定要使用Triple协议，否则会报错
//        /*userService.sayHelloServerStream("hello", new StreamObserver<String>() {
//            @Override
//            public void onNext(String data) {
//                System.out.println(data);
//            }
//
//            @Override
//            public void onError(Throwable throwable) {
//                System.out.println(throwable.getMessage());
//            }
//
//            @Override
//            public void onCompleted() {
//
//            }
//        });*/
//        StreamObserver<String> streamObserver = userService.sayHelloStream(new StreamObserver<String>() {
//            @Override
//            public void onNext(String data) {
//
//            }
//
//            @Override
//            public void onError(Throwable throwable) {
//
//            }
//
//            @Override
//            public void onCompleted() {
//
//            }
//        });
//        streamObserver.onNext("双端流式调用试一次");
//        streamObserver.onNext("双端流式调用再试一次");
//        streamObserver.onNext("双端流式调用最后试一次");
//        //数据发送结束
//        streamObserver.onCompleted();
//        return "success";
//    }
}
